package com.moli.iov.admin.service;

import com.moli.iov.admin.model.vo.req.CompanyVo;
import com.moli.iov.model.dto.req.PageExtend;
import com.moli.iov.rest.RestResponse;
import com.moli.iov.sys.model.po.Company;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * <p>
 * 企业管理 业务
 * </p>
 *
 * @author zql
 * @since 2019/9/4 15:59
 */
public interface ICompanyFacadeService {

  /**
   *
   * 分页查询企业列表
   *
   * @param companyVo
   * @return
   */
  RestResponse<PageExtend<Company>> listCompanyOfPage(CompanyVo companyVo);

  /**
   * 查询企业列表  -- 下拉框
   * @param companyVo
   * @return
   */
  RestResponse<List<Company>> listCompany(CompanyVo companyVo);

  /**
   * 增加企业
   * @param companyVo
   * @return
   */
  RestResponse saveCompany(CompanyVo companyVo);

  /**
   * 修改企业
   * @param companyVo
   * @return
   */
  RestResponse updateCompanyByCompanyId(CompanyVo companyVo);

  /**
   * 获取单个企业
   * @param companyVo
   * @return
   */
  RestResponse getCompanyByCompanyId(CompanyVo companyVo);

  /**
   * 导出
   * @param companyVo
   * @param request
   * @param res
   */
  void exportCompany(CompanyVo companyVo, HttpServletRequest request,
      HttpServletResponse res) throws Exception;
}
